package com.atguigu.gmall.item.vo;

import com.atguigu.gmall.pms.entity.CategoryEntity;
import com.atguigu.gmall.pms.entity.SkuImagesEntity;
import com.atguigu.gmall.pms.vo.ItemGroupVo;
import com.atguigu.gmall.pms.vo.SaleAttrValueVo;
import com.atguigu.gmall.sms.vo.ItemSaleVo;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * 商品详情页对应的商品vo类
 */
@Data
public class ItemVo {
    //商品的1、2、3、级分类
    private List<CategoryEntity> categories;
    //商品的品牌相关的参数，品牌名称，id
    private Long brandId;
    private String brandName;
    //spu相关字段
    private Long spuId;
    private String spuName;
    //sku相关字段
    private Long skuId;
    //商品的标题
    private String title;
    //商品的副标题
    private String subTitle;
    //商品的价格
    private BigDecimal price;
    //商品的重量
    private Integer weight;
    //默认图片
    private String defaultImage;

    //商品的图片信息
    private List<SkuImagesEntity> images;
    //商品的营销相关字段
    private List<ItemSaleVo> sales;
    //是否有货
    private Boolean store =false;

    //商品的销售相关字段，由销售属性组成的字段
    private List<SaleAttrValueVo> saleAttrs;//saleAttrs

    //高亮商品字段,当前sku的销售属性
    private Map<Long,String> saleAttr;

    //销售属性组合与skuid的映射关系
    //{'黑夜黑'，8G，256G,:4}
    private String skuJsons;
//spu描述信息
    private List<String> spuImages;

    //规格参数组的字段
    private List<ItemGroupVo> groups;

}
